[アップデート] amplify pull サポートされました!
こんにちはー!コンサル部のテウです。
明日は人生初めにアメリカに向かいます!こんな私もアメリカを行く事ができるなんて。。! しかも会社から経費をもらって飛行機やホテル、あと、一番大事な Re:Invent のコンファレンス登録費まで全部会社からもらいます!!
そうですね。アウトプットしっかりしないとですね! そういう事で、Re:Invent に行く前に私が過ごしちゃっていたアップデートがあるかを確認してみました。
確認してみたところ、amplifyのアップデート!しかも複数のプロジェクトからバックエンド作業が超楽になる amplify pull が新しくサポートされました!というお知らせが3日前ありました。
AppSync と Amplify が大好きな私がどうやってこのアップデートのお知らせを当日にすぐ確認できなかったかは悔しいですが、とにかく早速試してみました。
目次
やってみた
Amplify CLI バージョンアップ
下記のコマンドを入力して Amplify CLI をアップデートします。
$ npm install -g @aws-amplify/cli
もし権限の問題が発生した場合は、
$ sudo npm install -g @aws-amplify/cli
を実行すれば解決されます。
Angularプロジェクトの生成
早速新しいAngularプロジェクトを作りました。
$ ng new angular-admin-amplify $ cd angular-admin-amplify $ ng serve
最近(というか、最近はAWSにハマっていて、フロント側のアップデートには追いつけていないですが)新しく変わったAngularのランディングページはめちゃ気に入りますw
Ctrl + C で ng serve を停止して、amplify init を入力します。
$ amplify init
あと、Auth と Api を追加してみます。(二つ目の他のフロントプロジェクトからこのAmplifyのバックエンドを pull してみます。
$ amplify add auth
$ amplify add api
Amplify関連コードが追加されるので、関連ライブラリーをインストールします。
$ npm install aws-amplify aws-amplify-angular --save
次は amplify push ですね! (amplify push と amplify publish の違いは、amplify push はバックエンドのリソース設定、publish は バックエンドとフロントエンドを両方含めたデプロイとなります。今回は amplify pull を試したいだけなので、publish は行いませんでした。)
$ amplify push
はい、次は Amplify Console に接続して、プロジェクトを登録します。
$ amplify console
下のような画面が出ます。
angularadminamplify のところをクリックして、Backend environments タブをクリックすると、amplify pull コマンドを確認できます。
このコマンドは二つ目のAmplifyプロジェクト、Ionic アプリから実行させていただきます。
Ionic プロジェクトの生成
今回は Ionic プロジェクトを生成します。この Ionic プロジェクトからは先ほどの Angular プロジェクトで設定した amplify のバックエンドを amplify pull にて連携させていただきます。
Angularプロジェクトの root directory の上位 directory で ionic プロジェクトを生成します。
$ ionic start ionic-app-amplify
あと、プロジェクトを実行してみました。
$ cd ionic-app-amplify $ ionic serve
amplify pull
はい、amplify pull を実行する前に amplify status を実行すると、下記のようなエラーが、当然出てきます。
$ amplify status
次はとうとう amplify pull ですね!先ほど確認した amplify pull コマンドを実行します。
$ amplify pull
ls コマンドにて確認してみると amplify フォルダーが生成されました!はい、pull ができました。
amplify status にて確認してみても、連携されていますよね。
何が嬉しい?
そうですね。前は Amplify プロジェクトを複数のプロジェクトに共有するためには直接にamplifyフォルダーを copy & paste するしかなかったのですが、今回のアップデートで、複数のプロジェクトで同じAmplifyプロジェクトを共有することが楽になりました!
あと、バックエンドのアップデートがあった時も、前はこのアップデート分を github 等の連携を介して更新したのですが、今回の amplify pull コマンドで、これも自動でアップデートされます。
最後に
個人的に AppSync と Amplify のファンであり、今回のアップデートはすごく嬉しいです。あと、今回の記事のアップデートの内容では外していますが、Amplify Console のフロントエンド側の Code Pipeline みたいな機能も追加されていて、まさに Amplify一つで開発が出来る日も近くなった気がします。Re:Invent 現地で発表される機能もあるようなので、本当に楽しみですね!